package com.meida.module.bus.provider.service;


import com.meida.common.mybatis.base.service.IBaseService;
import com.meida.common.mybatis.entity.EntityMap;
import com.meida.common.mybatis.model.ResultBody;
import com.meida.module.bus.client.entity.BusMaterialPlan200;
import com.meida.module.bus.client.entity.BusPurchase;
import org.springframework.web.multipart.MultipartFile;

import java.util.List;
import java.util.Map;

/**
 * 200材料计划表 接口
 *
 * @author flyme
 * @date 2020-10-22
 */
public interface BusMaterialPlan200Service extends IBaseService<BusMaterialPlan200> {

    /**
     * 200开口订单下达
     * @param
     * @param
     * @return*/

    ResultBody updateMaterial(Long projrctId, Long versionId, BusPurchase purchase) throws Exception;
    /*
     *Oa审核成功，更新项目为审核中的数据为审核成功
     */
    Boolean goApplyStatus(Long projectId, Integer applayStatus);

    List<EntityMap> selectInnerOrder(Long purchaseId, Long materialPlanId);

    Boolean updatepurseApplayStatus(Long projectId, List<BusMaterialPlan200> plan200s);

    /**
     * 材料200所有版本信息
     * @param map
     * @return
     */
    List<EntityMap> selectVersionList(Map map);

     List<EntityMap> initPurchseDataplans(Map map);



    ResultBody copyAndUpdateplan(Map map);


    List<EntityMap> initDataplans(Map map);

    ResultBody import200PurseDetail(MultipartFile file, Map params);

    ResultBody importPlan200Data(MultipartFile file, Map params);

    ResultBody mergeplan200(Map map);

    ResultBody gomergeplan200(Integer checkState,Long projectId);

    Boolean updateApplayStatus(Long projectId, Integer planType, Integer applayStatus);

    /**
     * 材料申请审核后调用
     * @param projectId
     * @return
     */
    ResultBody goPurseSuccess(Integer checkState, Long projectId, List<BusMaterialPlan200> plan200List, BusPurchase purchase, String userNm);











}
